package com.LeeCode;

import java.util.ArrayList;
import java.util.List;

/**
 * 二叉搜索树中第K小的元素
 */

public class Code230 {
    public List<Integer> list = new ArrayList<>();

    public static void main(String[] args) {

    }

    private int ans, k;

    public int kthSmallest(TreeNode root, int k) {
        this.k = k;
        innerTravel(root);
        return ans; // k 从1开始计数
    }

    public void innerTravel(TreeNode root) {
        if (root == null || k == 0) return;
        innerTravel(root.left);
        if (--k == 0) ans = root.val;
        innerTravel(root.right);
    }
}
